home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-05 / src_1218.zip / PC.H < prev    next >
C/C++ Source or Header  |  1991-05-24  |  2KB  |  84 lines

  1. #ifndef    _PC_H
  2. #define    _PC_H
  3. #define _HARDWARE_H
  4.  
  5. #ifndef    _GLOBAL_H
  6. #include "global.h"
  7. #endif
  8.  
  9. #ifndef _SESSION_H
  10. #include "session.h"
  11. #endif
  12.  
  13. #define    NSW    10    /* Number of stopwatch "memories" */
  14.  
  15. struct stopwatch {
  16.     long calls;
  17.     int16 maxval;
  18.     int16 minval;
  19. };
  20. struct screen {
  21.     char *save;        /* Screen save buffer */
  22.     int row;        /* Saved cursor location */
  23.     int col;
  24. };
  25. #define    NULLSCREEN    (struct screen *)0
  26.  
  27. extern struct stopwatch Sw[];
  28. extern int16 Intstk[];    /* Interrupt stack defined in pcgen.asm */
  29. extern void (*Shutdown[])();    /* List of functions to call at shutdown */
  30. extern int Mtasker;    /* Type of multitasker, if any */
  31.  
  32. /* In 8250.c: */
  33. void asytimer __ARGS((void));
  34.  
  35. /* In scc.c: */
  36. void scctimer __ARGS((void));
  37. void sccstop __ARGS((void));
  38.  
  39. /* In pc.c: */
  40. long bioscnt __ARGS((void));
  41. void clrbit __ARGS((unsigned port,char bits));
  42. void ctick __ARGS((void));
  43. int32 divrem __ARGS((int32 dividend,int16 divisor));
  44. INTERRUPT  (*getirq __ARGS((unsigned int)) ) __ARGS((void));
  45. void freescreen __ARGS((struct session *sp));
  46. int getmask __ARGS((unsigned irq));
  47. void ioinit __ARGS((void));
  48. void iostop __ARGS((void));
  49. void kbint __ARGS((void));
  50. int kbread __ARGS((void));
  51. int maskoff __ARGS((unsigned irq));
  52. int maskon __ARGS((unsigned irq));
  53. void newscreen __ARGS((struct session *sp));
  54. void pctick __ARGS((void));
  55. void setbit __ARGS((unsigned port,char bits));
  56. int setirq __ARGS((unsigned irq,INTERRUPT (*handler) __ARGS((void))));
  57. void sysreset __ARGS((void));
  58. void systick __ARGS((void));
  59. void writebit __ARGS((unsigned port,char mask,int val));
  60.  
  61. /* In pcgen.asm: */
  62. INTERRUPT btick __ARGS((void));
  63. void chktasker __ARGS((void));
  64. void chtimer __ARGS((INTERRUPT (*)()));
  65. int32 divrem __ARGS((int32 dividend,int16 divisor));
  66. int16 getss __ARGS((void));
  67. void giveup __ARGS((void));
  68. int kbraw __ARGS((void));
  69. int16 longdiv __ARGS((int16 divisor,int n,int16 *dividend));
  70. int16 longmul __ARGS((int16 multiplier,int n,int16 *multiplicand));
  71. INTERRUPT nullvec __ARGS((void));
  72. void uchtimer __ARGS((void));
  73. int16 clockbits __ARGS((void));
  74.  
  75. /* In stopwatch.asm: */
  76. void swstart __ARGS((void));
  77. int16 stopval __ARGS((void));
  78.  
  79. /* In sw.c: */
  80. void swstop __ARGS((int n));
  81.  
  82. #endif    /* _PC_H */
  83.  
  84.